home *** CD-ROM | disk | FTP | other *** search
Wrap
1 GOTO910 2 REM ** ML STOP KEY DISABLE ** 3 PRINT"x[169]=[141][169][141]X` [234][255][169][255][133][145]L4[234]x[169]1[141][169][234][141]X` 4 [153]"xhhh+hNOThhhhhhhPRINT#HRUNHX`111" 5 [153]"hhhhhhh`1" 6 [143] ** 4 - POP ML SUBROUTINE ** 10 [143] **GENERAL INPUT ROUTINE ** 15 : 30 : 35 [143] +++ INPUT SECTION +++ 40 [151]UO,0:UR$[178]"":UI$[178]"" 42 [139]UL[178]0[167]UL[178]80 45 [153]" CMDCMD";:[151]UC,0 50 [161]UI$:[139]UI$[178]""[167]50 55 [139]UI$[178][199](13)[175][195](UR$)[177][178]1[167][151]UC,1:[153]" CMD";:[137]85 60 [139]UI$[178][199](20)[167]105 62 [139] [195](UR$)[178][177]UL[167]50 65 [141]120:[143] CHECK FOR VALID CHARACTER 70 UR$[178]UR$[170]UI$ 75 [153]UI$; 80 [137]50 85 [143] +++ CHECK FOR HELP REQUEST +++ 90 [139]UR$[178]UX$[167]195:[143] EXIT TO HELP ROUTINE 95 [139]UF[178]1[167][141]240 100 UF[178]0:[153]:[142] 102 [143] ++ CHECK DELETE ++ 105 [139][195](UR$)[179]1[167]50 110 UR$[178][200](UR$,[195](UR$)[171]1) 115 [153]"CMD CMDCMD";:[137]50 120 [143] ++ CHECK FOR VALID CHARACTERS ++ 125 [139][195](US$)[178]0[167]150 130 [129]US[178]1[164][195](US$) 135 [139]UI$[178][202](US$,US,1)[167][142] 140 [130] 145 UI$[178]"":[142] 150 [143] ** STANDARD INPUT ** 152 [139][198](UI$)[178]46[167][142] 155 [139]UI$[178][199](32)[167][142] 160 [139][198](UI$)[179]48[176][198](UI$)[177]57[167]170 165 [142] 170 [139][198](UI$)[179]65[176][198](UI$)[177]90[167]180 175 [142] 180 [139][198](UI$)[179]193[176][198](UI$)[177]218[167]UI$[178]"":[142] 185 [139][194](UT)[178]UU%[167]UI$[178][199]([198](UI$)[171]128):[142] 187 [142] 190 UI$[178]"":[142] 195 UF[178]1:[143] +++ HELP ROUTINE EXIT +++ 197 [141]250 200 [141]245 205 [129]UQ[178]UB[164](UB[170]987) 210 UQ%(UQ[171]UB)[178][194](UQ):[130]:[153]"LOAD" 215 UZ[178]1:UV%[178][194](UT) 216 [137]300 217 UZ[178]0:US$[178]UJ$:UG$[178]UK$:UP[178]UJ:UL[178]UK 218 [139][194](50003)[178]0[167][151]53281,1:[153]"LOAD";:[151]53281,6:[151]53280,14:[137]220 219 [153]"LOAD"; 220 UT$[178]UL$:[151]UT,UV%:[129]UQ[178]UB[164]UB[170]987 225 [151]UQ,UQ%(UQ[171]UB):[130] 230 [151]U1,U1% 232 [151]U2,U2% 233 [151]U4,U4% 234 [151]U3,U3%[171]1 235 [137]35 240 UD%[178]((U2%[172]256[170]U1%[170]U3%)[171]UB)[173]40:[153][200](UD$,UD%[170]1):[142] 245 [153][200](UD$,24);[163]68);"HELP COMINGWAIT";:[142] 250 U1%[178][194](U1):U2%[178][194](U2):U3%[178][194](U3):U4%[178][194](U4) 251 UJ$[178]US$:UK$[178]UG$:UL$[178]UT$:UJ[178]UP:UK[178]UL 255 [142] 300 [143] ** MENU ** 301 : 302 [153]"LOAD":[151]UT,UU%:[139][194](50003)[178]0[167][151]53281,9:[151]53280,8 303 : 305 [153]" MENU" 310 [153]" --------------------------------------" 315 [153]" 1. BEGIN ARTILLERY 320 PRINT" 2. STUDENT INSTRUCTIONS" 325 PRINT" 3. TEACHER INSTRUCTIONS" 335 PRINT" 4. QUIT" 340 PRINT" --------------------------------------" 345 PRINT" PRESS A NUMBER KEY (1-4) "; 350 UL=1:US$="1234":GOSUB35:REM INPUT ROUTINE 352 US$="" 355 ONVAL(UR$)GOSUB1000,400,500,396 360 GOTO300 395 REM ** RE-ENABLE STOP KEY AND END ** 396 IFPEEK(50003)<>1ANDPEEK(50003)<>160ANDPEEK(50003)<>0THEN399 397 SYSUU+71:IFPEEK(50003)=0THENPOKE53281,6:POKE53280,14 398 PRINT"[154][147]":END 399 GOSUB875:RETURN 400 REM ** STUDENT INSTRUCTIONS ** 405 PRINT"[147]":POKEUT,UL%:IFPEEK(50003)=0THENPOKE53281,0:POKE53280,0 410 UP=0:UG$="[211]TUDENT [201]NST":GOSUB850 412 PRINT" [212]HIS IS A GAME IN WHICH 2 PLAYERS SHOOT"; 413 PRINT" AT EACH OTHER ACROSS A MOUNTAIN." 414 PRINT" [193]T EACH TURN, THE PLAYER ENTERS THE " 415 PRINT" ANGLE TO FIRE (1-90) AND THE[160]NUMBER OF BAGS OF "; 416 PRINT" POWDER (1 TO 15 [194][193][199][211]). 418 [153]" (null)(null)(null)VAL: 475 PRINT" [201]F YOU WISH [200][197][204][208] PRESS 'H' [210][197][212][213][210][206]." 485 GOSUB835 490 IFUZ=1THENSYSUP%:GOTO217 499 RETURN 500 REM ** TEACHER INSTRUCTIONS ** 501 PRINT"[147]":POKEUT,UL%:IFPEEK(50003)=0THENPOKE53281,2:POKE53280,10 502 UP=0:UG$="[212]EACHER [201]NST":GOSUB850 503 PRINT" [212]O THE BEST OF OUR KNOWLEDGE," 504 PRINT" THIS PROGRAM IS IN THE PUBLIC" 505 PRINT" DOMAIN. [201]F THIS IS NOT THE CASE" 506 PRINT" PLEASE CONTACT:" 507 PRINT" [195]OMMODORE [194]USINESS [205]ACHINES" 508 PRINT" 3370 [208]HARMACY [193]VE. 509 [153]" ATNGINCOURT, (null)NTARIO" 510 [153]" LENANADA (null)1(null) 2(null)4" 511 [153]" (416) 499-4292" 512 UP[178]1:[141] 835:[141] 850: 513 [153]" (null)ROGRAM (null)AME: ATNRTILLERY 514 PRINT" [215]RITTEN [194]Y : [213]NKNOWN 515 [153]" (null)PGRADED PEEKY : 516 PRINT" [212]HIS PROGRAM WILL RUN ON ANY 519 [153]" (null)VAL(null) 64 LEN(null)(null)(null)(null)(null)VAL(null) 520 PRINT" [195][207][205][205][207][196][207][210][197] 64 [195][207][205][208][213][212][197][210] 521 [141]835 590 [139]UZ[178]1[167][158]UP%:[137]217 599 [142] 600 [143] ** PROGRAM MODIFICATION INST ** 601 [153]"LOAD":[151]UT,UL% 605 UP[178]0:UG$[178]"(null)ROGRAM (null)OD":[141]850 660 [141]835 690 [139]UZ[178]1[167][158]UP%:[137]217 699 [142] 700 [143] ** TO USE 8032 LOAD CBM4032 ** 710 [153]"LOADBEFORE RUNNING THIS PROGRAM ON AN 8032 720 PRINT" LOAD THE 'CBM 4032' PROGRAM" 730 SYSUU+71 740 END 800 REM ** T I T L E P A G E ** 802 PRINT"[147]";:POKEUT,UU%:IFPEEK(50003)=0THENPOKE53280,14:POKE53281,6 804 FORI=1TO38:PRINT"[166][146]";:NEXT 806 FORI=1TO22:PRINT"[157][166][146]";:NEXT 808 FORI=1TO37:PRINT"[157][157][166][146]";:NEXT 810 FORI=1TO22:PRINT"[145][157][166][146]";:NEXT 812 PRINT"[169] [146] 814 [153]" WAIT WAITSTEP 816 PRINT" [146] [163][223] 818 [153]"(null) WAIT 820 PRINT"C O M M O D O R E 822 [153]"EDUCATIONAL 824 PRINT"SOFTWARE 826 [143] ** COMMODORE LOGO ** 827 [153][200](UD$,24);"PRESS SPACE BAR OR WAITWAIT":I[178]0 828 [161]A$:[139]A$[179][177]" "[167]I[178]I[170]1:[139]I[179]250[167]828 830 T1$[178]"":T2$[178]"":T3$[178]"":T4$[178]"":I[178]0 832 [137]300 835 [143] ** SPACE BAR PRESS ** 840 [151]UO,0:[153][200](UD$,24);"PRESS SPACE BAR TO CONTINUEWAIT" 844 [161]UI$:[139]UI$[179][177]" "[167]844 846 [142] 850 [143] ** PAGE DESIGN ROUTINE ** 852 UP[178]UP[170]1 855 [153]"LOAD"[200](UT$[170]UP$,21);[201](UP$[170]UG$[170][196](UP),18) 860 [153]" --------------------------------------" 864 [139]UH[179][177]0[167]870 865 [153][200](UD$,24);[200](UP$,7);"HELP - PRESS H <RETURN>" 870 UH[178]0:[153]"":[142] 875 [143] ** PLEASE WAIT REMARK ** 880 [153][200](UD$,24);" ONE MOMENT PLEASE... " 885 [142] 900 [143] ** SET UP VARIABLES ** 901 UX$[178]"H":[134]UQ%(1000):UB[178]32768:U1[178]196:U2[178]197:U3[178]198:U4[178]216:UC[178]167:UU[178]1024 902 UT[178]59468:UU%[178]12:UL%[178]14:UP%[178]1146:UM[178]32768:UO[178]158:[151] 50003,0 903 [139][194](50003)[178]0[167]UB[178]1024:U1[178]209:U2[178]210:U3[178]211:U4[178]214:UC[178]204:UU[178]2048 904 [139][194](50003)[178]0[167]UT[178]53272:UU%[178]21:UL%[178]23:UP%[178]2139:UM[178]1024:UO[178]198 905 UD$[178]"" 906 UP$[178]" " 907 UT$[178]" ATNRTILLERY CLOSECLOSECLOSECLOSECLOSE":[143] PLACE PROGRAM TITLE HERE !!!!!!!!!!!!!!!!!*** 908 [134]A(100),B(100),H(39),A1(2),B1(2),A2(2),B2(2),L(2) 909 [142] 910 [143] ** SET VARIABLES ** 915 [141]900 920 [143] ** CHECK FOR 8032 ** 925 [153]"LOAD":[153]"CLOSE":[143] SHIFTED SPACE 930 [139][194](UB[170]40)[179][177]96[167][141]700 931 [143] ** MEMORY CHECK ** 932 [139] [184](0)[177]2000[167]937 933 [153]"LOADTHIS MACHINE DOES NOT HAVE ENOUGH" 934 [153]"MEMORY TO RUN THIS PROGRAM !" 935 [158]UU[170]71 936 [128] 937 [153]"LOAD":[139][194](50003)[178]0[167]962 940 [143] ** BASIC 2.0 OR 4.0 OR C-64 SETUP ** 941 [151]1075,133:[151]1076,144:[151]1077,234:[151]1079,4:[151]1080,133:[151]1081,145 942 [151]1091,155:[151]1098,133:[151]1099,144:[151]1100,234:[151]1103,133 943 [151]1104,145:[151]1105,234:[151]1082,234 945 [139][194](50003)[179][177]160[167]955 950 [151]1093,88:[151]1094,228:[151]1097,85:[151]1102,228:[137]965 955 [139][194](50003)[179][177]1[167]990 960 [151]1093,49:[151]1094,230:[151]1097,46:[151]1102,230:[137]965 962 [151]2099,141:[151]2100,20:[151]2101,3:[151]2103,8:[151]2104,141:[151]2105,21 963 [151]2106,3:[151]2115,145:[151]2117,52:[151]2118,234:[151]2121,49:[151]2122,141 964 [151]2123,20:[151]2124,3:[151]2126,234:[151]2127,141:[151]2128,21:[151]2129,3 965 [158]UU[170]48:[143] DISABLE STOP KEY 970 [141]800:[143] TITLE 980 [137]300:[143] MENU 990 [153]"LOADTHE PGM WILL NOT WORK ON THIS MACHINE!":[128] 1000 [139]UZ[178]1[167][158]UP%:[158]UP%:UZ[178]0:[143] ** PROGRAM STARTS HERE ** 1001 [153]"LOAD";:[140]:[139][194](50003)[178]0[167][151]53281,6:[151]53280,6 1135 [151]UT,UL% 1140 [143] GOSUB 2890 1144 [156]:[141]900 1270 [153]"LOAD":[151] UT,UU%:[143] RESET TO GRAPHICS 1280 Z$[178]" ONCMD":[129] X[178]1 [164] 5:Z$[178]Z$[170]Z$:[130]X 1290 A$[178]"":[129] X[178]1 [164] 6:A$[178]A$[170]A$:[130]X:B$[178]"":[129] X[178]1 [164] 5:B$[178]B$[170]B$:[130]X 1300 N[178]2 1310 [143] CONSTRUCT MOUNTAIN 1315 [153]"LOAD";[200](UD$,23);"BUILDING MOUNTAIN..." 1320 X1[178][181](6[170][187](1)[172]8) 1330 X2[178][181](25[170][187](1)[172]8) 1340 L(1)[178][181](3[170](X1[171]3)[172][187](1)) 1350 L(2)[178][181](X2[170]1[170](36[171]X2)[172][187](1)) 1360 H9[178][187](1)[172]11[170]1 1370 [129] I[178]1 [164] X1:H(I)[178]H9:[130]I 1380 H9[178][187](1)[172]11[170]1 1390 [129] I[178]X2 [164] 39:H(I)[178]H9:[130]I 1400 [139] [182](H(1)[171]H(39))[179]4 [167] [137] 1360 1410 X3[178]X1[170][181]([187](1)[172](X2[171]X1[171]6))[170]3 1420 H(X3)[178][187](1)[172]11[170]9 1430 D1[178](H(X3)[171]H(1))[173]2 1440 D2[178](H(X3)[171]H(39))[173]2 1450 [139] D1[172]D2[179][178]0 [167] [137] 1610 1460 J[178][171]180 1470 K[178]180[173](X3[171]X1[170]1) 1480 H9[178]H(1)[170]D1 1490 [129] I[178]X1[170]1 [164] X3[171]1 1500 J[178]J[170]K 1510 H(I)[178]H9[170][190](J[172][255][173]180)[172]D1 1520 [130]I 1530 J[178]0 1540 K[178]180[173](X2[171]X3[170]1) 1550 H9[178]H(39)[170]D2 1560 [129] I[178]X3[170]1 [164] X2[171]1 1570 J[178]J[170]K 1580 H(I)[178]H9[170][190](J[172][255][173]180)[172]D2 1590 [130]I 1600 [137] 1690 1610 D[178](H(1)[171]H(39))[173]2 1620 J[178]0 1630 K[178]180[173](X2[171]X1[170]1) 1640 H9[178]H(39)[170]D 1650 [129] I[178]X1[170]1 [164] X2[171]1 1660 J[178]J[170]K 1670 H(I)[178]H9[170][190](J[172][255][173]180)[172]D 1680 [130] I 1690 [153]""; 1700 W[178][181](100[172]([187](1)[171].5)) 1710 [153][200](B$,22); 1720 [129] I[178]1 [164] 39:H(I)[178][181](H(I)[170].5):[130]I 1730 [129] X[178]1 [164] 39:[139]X[178]1 [167] [137] 1750 1740 [153]""; 1750 [153][202](Z$,1,H(X)[172]4); 1760 [129] Z[178]1 [164] H(X):[153]"";:[130]Z 1770 [130] X:[153]"WAIT" 1780 [153]""; 1790 [153][202](B$,1,22[171]H(1));:[139] L(1)[178]1 [167] [137] 1810 1800 [153][202](A$,1,L(1)[171]1); 1810 [153]"^"; 1820 [153]""; 1830 [153][202](B$,1,22[171]H(39)); 1840 [153][202](A$,1,L(2)[171]1); 1850 [153]"^"; 1855 [153][200](UD$,23)"PLAYER 1WAITPLAYER 2WAIT" 1860 [153]""; 1870 [153][202](B$,1,24); 1880 [153]" "; 1890 K[178]1 1900 [139]W[177][178]0 [167] [137] 1930 1910 [153][171]W;" MPH WIND <----- "; 1920 [137] 1950 1930 [153]W;" MPH WIND ------> "; 1940 [153]""; 1950 [153]"";:N[178]3[171]N:[139] N[178]1 [167] [137] 2010 1960 [153][200](UD$,23)" PLAYER 1 WAIT*PLAYER 2*" 1965 [153]"";[200](A$,23);"ANGLE (1-90) SIN CMDCMD";:UL[178]2 1970 US$[178]"0123456789H":[141]35:E[178][197](UR$):[139] E[177]90 [167] [153]"CMDCMDSIN CMDCMD";:[137] 1970 1975 [153]"";:[139]E[178]0 [167] [137] 1965 1980 [153][200](B$,1);[200](A$,23);"POWDER(1-15) CMDCMDSINCMD";:UL[178]2:US$[178]"0123456789 1990 US$=US$+"H":GOSUB35:V=VAL(UR$):IF V>15 OR V<=0 THEN GOTO 1975 2000 GOTO 2040 2010 PRINT" ";" "; 2015 PRINT" "; 2020 PRINTLEFT$(UD$,23)"*PLAYER 1* PLAYER 2 [146]" 2025 PRINT" ";"ANGLE (1-90) [191] [157][157]";:UL=2 2030 US$="0123456789H":GOSUB35:E=VAL(UR$):IF E>90 OR E=0 THEN GOTO 2025 2032 PRINT"POWDER (1-15) [157][157][157][191][157]";:GOSUB35 2035 V=VAL(UR$):IFV>15 OR V<=0 THEN GOTO 2032 2040 K=K+1:IF E=0 THEN GOTO 1310 2050 A2(N)=A2(N)-2.86 2060 E=90-E 2070 IF N=1 THEN GOTO 2090 2080 E=-E 2090 X1=L(N) 2100 Y1=H(L(N))+1 2110 T=0:M=0 2120 V1=SIN(E*(null)/180)*V 2130 V2=COS(E*(null)/180)*V*.7 2140 T=T+.5:M=M+1 2150 V1=V1+(V1+W*.5)/1500 2160 X=X1+(V1+W*.5/50)*T 2170 X=INT(X+.5) 2180 Y=Y1+(V2-T/3)*T 2190 Y=INT(Y+.5) 2200 Z=23-Y:PRINT""; 2210 A(M)=Z:B(M)=X:IF X>39 OR X<1 THEN GOTO 2530 2220 IFY-H(X)<=0 THEN GOTO 2520 2230 IF Z<0 THEN GOTO 2290 2240 IF Z=0 THEN GOTO 2260 2250 PRINTLEFT$(B$,Z); 2260 IF X=1 THEN GOTO 2280 2270 PRINTLEFT$(A$,X-1); 2280 PRINT"[209]" 2290 PRINT""; 2300 IF M-4<1 THEN GOTO 2140 2310 IF A(M-4)=0 THEN GOTO 2340 2320 IF A(M-4)<0 OR B(M-4)<=0 THEN GOTO 2140 2330 PRINTLEFT$(B$,A(M-4)); 2340 PRINTLEFT$(A$,B(M-4)-1); 2350 PRINT" "; 2360 PRINT""; 2370 GOTO 2140 2380 IF M=1 THEN GOTO 2140 2390 IF B(M)<1 OR B(M)>39 THEN GOTO 1950 2400 REM LINES 2410 AND 2440 DETERMINE HIT. CHANGE '1.5' TO CHANGE DIFFICULTY. 2410 IF ABS(B(M-1)-L(N))<1.5 THEN GOTO 2430 2420 GOTO 2440 2430 IF T>1 THEN GOTO 2710 2440 IF ABS(B(M-1)-L(3-N))<1.5 THEN GOTO 2790 2450 IF T<1 THEN GOTO 2140 2460 GOTO 2650 2470 PRINT"[145]" 2480 PRINT" ANOTHER GAME ? (Y/N) [191][157]"; 2490 UL=1:US$="YNH":GOSUB35 2500 IF UR$="Y" THEN 1000 2510 GOTO300 2520 PRINT""; 2530 FOR J=4 TO 1 STEP -1 2540 IF M-J<=0 THEN GOTO 2620 2550 IF A(M-J)=0 THEN GOTO 2580 2560 IF A(M-J)<0 OR B(M-J)<=0 THEN GOTO 2620 2570 PRINT LEFT$(B$,A(M-J)); 2580 IF B(M-J)=1 THEN GOTO 2600 2590 PRINTLEFT$(A$,B(M-J)-1); 2600 PRINT" "; 2610 PRINT""; 2620 NEXT J:IF M=1 THEN GOTO 2830 2630 IF B(M)<1 OR B(M)>39 THEN GOTO 2840 2640 GOTO 2380 2650 IF B(M-1)=1 THEN GOTO 2670 2660 PRINTLEFT$(A$,B(M-1)-1); 2670 PRINTLEFT$(B$,23-H(B(M-1))); 2680 FOR Z=1 TO 3: PRINT"[145][157][205][215][206][145][157][157][157][205]![206]";:FOR X=1 TO 5:NEXTX 2690 PRINT"[157][157][157] [145][157][157][157] [157][157]";:FOR X=1 TO 5:NEXT X:NEXT Z:PRINT"[185]"; 2700 GOTO 2830 2710 PRINT""; 2720 PRINTLEFT$(A$,L(N)-1); 2730 PRINTLEFT$(B$,24-H(L(N))); 2740 FOR Z=1 TO10:PRINT"[145][157][223][209][169][146][145][157][157][157][157][205][191]![191][146][206][157][157][157][157][157][145][205][205]![206][206][157][157]";"[157]"; 2750 PRINT" [157][157][157][145] [157][157][157][157][157][145] [157][157][157][145]"; 2760 FOR X=1 TO 2:NEXT X:NEXT Z 2770 FORX=1 TO50:NEXT X 2780 GOTO 2470 2790 PRINT""; 2800 PRINTLEFT$(A$,L(3-N)-1); 2810 PRINTLEFT$(B$,24-H(L(3-N)-1)); 2820 GOTO 2740 2830 REM 2840 W=W+INT(10*(RND(1)-.5)) 2850 PRINT"";LEFT$(B$,24);" "; 2860 IF W>=0 THEN PRINT" [157][157][157]";W;" MPH WIND -----> ";:GOTO 1950 2870 PRINT" [157][157][157]";-W;" MPH WIND <----- ";:GOTO 1950 2880 RETURN 2890 REM 2900 PRINT "[147]";TAB(15);"[193]RTILLERY":PRINT:PRINT 2910 PRINT TAB(11);"[195]REATIVE [195]OMPUTING" 2920 PRINT TAB(13);"[208].[207]. BOX 789-M" 2930 PRINT TAB(6);"[205]ORRISTOWN, [206]EW [202]ERSEY 07960" 2931 PRINT"[206][207][212][197]:[208]RESS < [210][197][212][213][210][206] > AFTER[146]" 2932 PRINT"[197]ACH RESPONSE FROM THE KEYBOARD[146]" 2934 FORB1=1TO10 2936 PRINTLEFT$(UD$,21);"[206][207][212][197]:[208][210][197][211][211] [146]< [210][197][212][213][210][206] > AFTER [146]" 2937 FORB2=1TO300:NEXT:B2=0 2938 PRINTLEFT$(UD$,21);"[206][207][212][197]:[208][210][197][211][211] < [210][197][212][213][210][206] > AFTER [146]" 2939 FORB2=1TO300:NEXT:B2=0 2940 NEXT 2945 FOR B1=1TO2000:NEXT B1 2950 B1=0 2970 RETURN 6682